package com.cy.pj.sys.dao;

import com.cy.pj.sys.pojo.SysUser;
import com.cy.pj.sys.pojo.SysUserDept;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import java.util.List;

/**
 * @author 张琪
 * @date 2020/11/17
 * @describe
 */
@Mapper
public interface SysUserDao {
//  手动写数据, 现在修改方法
    int getRowCount(String username);

    List<SysUserDept> findPageObjects(
            String username, Integer startIndex, Integer pageSize
    );

    int validById(
            Integer id, Integer valid, String modifiedUser
    );

//    使用第三方库 来 实现分页功能,
//    优点: 可以自动拼接SQL语句, 编写简单
//    缺点: 可读性差,
    List<SysUserDept> findPageObjects1(String name);

    int insertObject(SysUser sysUser);

//    @Select("select * from sys_users where id = #{id}")
//    基于用户id, 查询用户 以及用户对应的部门id
    SysUserDept doFindById(Integer id);

    int updateObject(SysUser sysUser);

    SysUser findUserByUserName(String username);

    int updatePassword(String password, String salt, Integer id);

}
